package com.dys.processcontrol.substructure;

/**
 * @className: com.dys.processcontrol.substructure.IfElseIfTest
 * @description: if多分支
 * @author: pine cone
 * @version: v1.0.0
 * @createTime: 2024/06/18 下午8:29
 */
public class IfElseIfTest {

    public static void main(String[] args) {
        testSum();
    }

    /**
     * 实现功能：给出3个数，对3个数求和计算，根据和的大小来分配不同奖品
     * if多分支：
     * if(条件表达式，这个表达式的结果是布尔值：要么是true,要么是false){
     * // 如果上面()中的表达式返回结果是true,那么执行{}中的代码
     * // 如果上面()中的表达式返回结果是false,那么不会执行{}中的代码
     * // PS:{}中的代码是否执行，取决于()中表达式的返回结果
     * }
     */
    public static void testSum() {

        // 1.给出三个数
        int num1 = 5;
        int num2 = 6;
        int num3 = 6;

        // 2.求和
        int sum = 0;
        sum += num1;
        sum += num2;
        sum += num3;
        System.out.println("和为：sum = " + sum);

        // 3.根据和来分配奖品
        /*
         * if(){
         * } else if(){
         * }else if() {
         * }...
         * else {}
         * 【1】else 隐藏了一个条件，跟上面分支表达式相反的功能
         * 【2】多分支好处：只要满足了一个分支以后，后面的分支就不需要再判断了-->效率高
         * 【3】写代码时，尽量保证else的存在，else相当于“兜底”、“备胎”的作用，其它分支都不走，就会走这个分支
         * */
        if (sum >= 15) {
            System.out.println("一等奖");
            System.out.println("恭喜你很幸运，中了一等奖");
        } else if (sum >= 10) { // else隐藏了 sum<15
            System.out.println("二等奖");
        } else if (sum >= 6) {// else隐藏了 sum < 10
            System.out.println("三等奖");
        } else { // else隐藏了sum < 6
            System.out.println("四等奖");
        }
    }
}
